<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml"
	xmlns:h="http://java.sun.com/jsf/html"
	xmlns:p="http://primefaces.org/ui"
	xmlns:f="http://java.sun.com/jsf/core"
	xmlns:ui="http://java.sun.com/jsf/facelets">
<h:head>
	<title>Cadastro de Usuarios</title>
</h:head>
<ui:composition template="templatePrincipal.xhtml">
	<ui:define name="header">
		<ui:include src="header.xhtml" />
	</ui:define>

	<ui:define name="centro">
		<h:body>

			<p:growl id="messages" showDetail="true" life="1000" />
			<p:confirmDialog id="confirmRemoveDialog"
				message="Remover o usuario ?" header="Remoção de usuario"
				severity="alert" widgetVar="confirmation" appendToBody="true"
				update="messages">

				<p:commandButton id="confirm" value="Sim"
					oncomplete="confirmation.hide()"
					actionListener="#{usersController.removeUsuario}"
					update="messages,form1:tabview1:dataTable,form1:tabview1:dados" />

				<p:commandButton id="decline" value="Não"
					onclick="confirmation.hide()" type="button" />

			</p:confirmDialog>

			<h:form id="form1" prependId="false">

				<p:tabView id="tabview1" dynamic="true" cache="false">
					<p:ajax event="tabChange"
						listener="#{usersController.changeTabView}" update="novousuario" />


					<p:tab id="tabpesq" title="Pesquisar">
						<p:panelGrid columns="1" style="width:100%">

							<f:facet name="header">
        						Usuarios
    							</f:facet>

							<p:panelGrid id="dados" columns="4" colspan="10"
								style="width:100%">

								<f:facet name="header">
        						Dados da pesquisa
    							</f:facet>

								<p:outputLabel for="pesqnomeusuario" value="Nome Usuario :" />
								<p:inputText id="pesqnomeusuario"
									value="#{usersController.pesquser.itsName}"/>

								<p:outputLabel for="pesqnome" value="Nome :" />
								<p:inputText id="pesqnome"
									value="#{usersController.pesquser.nomeUsuario}" />

								<p:outputLabel for="pesqemail" value="Email :" />
								<p:inputText id="pesqemail"
									value="#{usersController.pesquser.email}"  />
								
								<p:outputLabel for="pesqendereco" value="Endereco :" />
								<p:inputText id="pesqendereco"
									value="#{usersController.pesquser.endereco}" />
									
								<p:outputLabel for="pesqcelular" value="Celular :" />
								<p:inputText id="pesqcelular"
									value="#{usersController.pesquser.celular}" size="80" />
								
								<p:commandButton value="Pesquisar"
									actionListener="#{usersController.pegarTodosUsuarios}"
									update="dataTable,dados" />

							</p:panelGrid>

							<p:dataTable id="dataTable" var="usuario"
								value="#{usersController.userList}" paginator="true"
								rows="3"
								paginatorTemplate="{CurrentPageReport}  {FirstPageLink} {PreviousPageLink} {PageLinks} {NextPageLink} {LastPageLink} {RowsPerPageDropdown}"
								rowsPerPageTemplate="3,6,9"
								selection="#{usersController.resuser}"
								selectionMode="single" rowKey="#{usuario.id_usuario}">

								<p:ajax event="rowSelect"
									listener="#{usersController.rowSelect}"
									update=":form1:tabview1:dados" />
									
								<f:facet name="header">
            					Usuarios encontrados
        					</f:facet>

								<p:column>
									<f:facet name="header">
										<h:outputText value="Id do usuario" />
									</f:facet>
									<h:outputText value="#{usuario.itsName}" />
								</p:column>
								
								<p:column>
									<f:facet name="header">
										<h:outputText value="Nome" />
									</f:facet>
									<h:outputText value="#{usuario.nomeUsuario}" />
								</p:column>
								
								<p:column>
									<f:facet name="header">
										<h:outputText value="Email" />
									</f:facet>
									<h:outputText value="#{usuario.email}" />
								</p:column>

								<p:column>
									<f:facet name="header">
										<h:outputText value="Celular" />
									</f:facet>
									<h:outputText value="#{usuario.celular}" />
								</p:column>

								<p:column>
									<f:facet name="header">
										<h:outputText value="Endereco" />
									</f:facet>
									<h:outputText value="#{usuario.endereco}" />
								</p:column>
								
								<p:column>
									<f:facet name="header">
										<h:outputText value="Grupo" />
									</f:facet>
									<h:outputText value="#{usuario.itsGroupEntity.itsName}" />
								</p:column>

							</p:dataTable>

							<p:panelGrid id="botoes" columns="3" colspan="10">

								<p:commandButton value="Remover" onclick="confirmation.show()"
									type="button" />

								<p:commandButton value="Salvar"
									actionListener="#{usersController.saveUsuario}"
									update="dados,dataTable,:messages" />

								<p:commandButton value="Cancelar" type="reset" />

							</p:panelGrid>
						</p:panelGrid>

					</p:tab>

					<p:tab id="tabnovocli" title="Novo Usuario">

						<p:panelGrid id="novousuario" columns="4">
							<f:facet name="header">
        					Dados do Usuario
    					</f:facet>
    					
    					
    							<p:outputLabel for="novonomeusuario" value="Nome Usuario :" />
								<p:inputText id="novonomeusuario"
									value="#{usersController.user.itsName}"/>

								<p:outputLabel for="novonome" value="Nome :" />
								<p:inputText id="novonome"
									value="#{usersController.user.nomeUsuario}" />
									
								<h:outputText value="Grupo : " />
								<p:selectOneMenu value="#{usersController.user.itsGroupEntity}"
									converter="groupEntityConverter" id="selecionaGrupo"
									process="@this">
									<f:selectItems
										value="#{usersController.groupList}"
										var="grupo" itemLabel="#{grupo.itsName}"
										itemValue="#{grupo}" />
								</p:selectOneMenu>

								<p:outputLabel for="novoemail" value="Email :" />
								<p:inputText id="novoemail"
									value="#{usersController.user.email}"  />
								
								<p:outputLabel for="novoendereco" value="Endereco :" />
								<p:inputText id="novoendereco"
									value="#{usersController.user.endereco}" />
									
								<p:outputLabel for="novocelular" value="Celular :" />
								<p:inputText id="novocelular"
									value="#{usersController.user.celular}"  />
								
								<p:outputLabel for="novopassword" value="Password :" />
								<p:inputText id="novopassword"
									value="#{usersController.user.itsPassword}" />
							
							<p:commandButton value="Salvar"
								actionListener="#{usersController.createUsuario}"
								update="novousuario,:messages" />

							<p:commandButton value="Cancelar" type="reset" />

						</p:panelGrid>

					</p:tab>

					<p:tab tab="importar" title="Importar">
						<p:panelGrid>
							<h:outputText value="Desenvolvimento futuro" />
						</p:panelGrid>
					</p:tab>
				</p:tabView>

			</h:form>
		</h:body>
	</ui:define>
</ui:composition>
</html>